﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using NUnit.Framework;
using Tibet.Logica;

namespace Tibet.Pruebas
{
    ///
    /// Prueba unitaria de intercepcion de archivo
    /// 
    [TestFixture]
    public class PruebaIntercepcion
    {
        private string _nombre = "Patricia";
        private string _apellido = "Valera";
        private string _nombreArchivo = "Algo.cs";
        DateTime _fecha = DateTime.ParseExact("16/11/2010", "dd/MM/yyyy", null);
        private string _email = "paty898@gmail.com";
        private Intercepcion _objetoIntercepcion;
        private Commit _objetoCommit;
        
        /// 
        /// prueba que valida que el objeto que traiga sea del tipo commit
        /// 
        [TestCase]
        public void PruebaIntercepcionSVN()
        {
            Assert.IsNotNull(_objetoCommit.Archivo);
            Assert.IsNotNull(_objetoCommit.Usuario);
            Assert.IsNotNull(_objetoCommit.Fecha);        
        }

        ///
        /// Prueba unitaria de enviar el objeto commit
        ///
        [TestCase]
        public void PruebaEnviarCommit()
        {
            _objetoCommit = new Commit();
            _objetoIntercepcion = new Intercepcion();
            Assert.IsNotInstanceOf<Commit>(_objetoCommit);
            _objetoCommit.Archivo.NombreArchivo = _nombreArchivo;
            _objetoCommit.Usuario.Nombre = _nombre;
            _objetoCommit.Usuario.Apellido = _apellido;
            _objetoCommit.Usuario.Email = _email;
            Assert.AreEqual(_objetoCommit.Archivo.NombreArchivo, "cualquiera.cs");
            Assert.AreEqual(_objetoCommit.Usuario.Nombre,"Carlos");
            Assert.AreEqual(_objetoCommit.Usuario.Apellido, "Del Toro");
            Assert.AreEqual(_objetoCommit.Fecha, "28/01/2009");
            Assert.AreEqual(_objetoCommit.Usuario.Email, "carlos@gmail.com");
            Commit resultado = _objetoIntercepcion.EnviarCommit(_objetoCommit);  
        }

    }
}
